/**
 * @author: zouye<yzyngz@foxmail.com>
 * @date: 2022-01-09 16:01:07
 * @copyright: zouye<yzyngz@foxmail.com>
 */
package com.yeah.voice.recognition.mapper;

import org.springframework.stereotype.Repository;
import org.apache.ibatis.annotations.Param;
import com.yeah.voice.recognition.entity.TbWavData;

/**
 * 音频数据信息数据库操作
 */
@Repository
public interface TbWavDataMapper {

	void insert(TbWavData data);
	
	void update(TbWavData data);
	
	/** 标记次数 +1 */
	void updateMarkedCountById(Integer id);

	/** 更新是否正在标记该音频标记位 */
	void updateIsMarking(@Param("id") Integer id, @Param("isMarking") Integer isMarking);

	/** 将过期的正在标记状态重置为0，5分钟前的标记状态认为是过期 */
	void resetOutdateIsMarking(Integer resetIsMarkingAfterMinute);

	TbWavData getById(Integer id);
	
	TbWavData getByName(String name);
	
	/** 获取指定用户没有标记过的，被标记次数最少的音频 */
	TbWavData getMinMarkedCountWav(Integer peopleId);
	
	boolean hasWavFile();
}
